const Koa = require('koa');
const { koaBody } = require('koa-body');
const koaSend = require('koa-send');
const koaLambda = require('./index.js');
const app = new Koa();


app.use(koaBody())
.use(koaLambda({
  // 定义了一个/aaa 根目录的（实际路径是/lambda）的模块
  root:'/aaa',
  dirname: __dirname+'/lambda/',
  // filter: /(.+)\.fn\.js$/,
}, app) )
.use(koaLambda({
  // 定义了一个/ 根目录的（实际路径是/src）的模块
  dirname: __dirname+'/src/',
  filter: /(.+)\.fn\.js$/, // 只加载符合这个正则的文件
}, app))


// /demo 是静态资源目录 （实际路径是/static）
app.use(async (ctx, next) => {
  let reg = /^\/demo/g;
  if(reg.test(ctx.path)){
    await koaSend(ctx, ctx.path.replace(reg, ''), { root: __dirname + "/static", index: 'index.html' });
  }else{
    await next();
  }
});

app.use(async ctx => {
  ctx.body = 'Hello World';
});



// console.log(app.lambdaRouters)

app.listen(3333);
console.log('The demo address is at http://localhost:3333/demo/');